package com.zjcode.cdcer.mapper;

import com.chinatechstar.component.commons.supports.PageData;
import com.zjcode.cdcer.pojo.CerSysteminitImportInfo;
import org.apache.ibatis.annotations.Mapper;
import org.apache.ibatis.annotations.Param;

import java.util.Collection;
import java.util.Date;
import java.util.LinkedHashMap;
import java.util.List;

@Mapper
public interface CerSysteminitImportInfoMapper {

    List<LinkedHashMap<String, Object>> listAllTableData(@Param("pageData") PageData pageData);

    void batchDeletion(@Param("pageData") PageData pageData);

    void oneClickDelete(@Param("pageData") PageData pageData);

    List<CerSysteminitImportInfo> getAllNoErrorData(@Param("pageData") PageData pageData);

    Integer updateCerSysteminitImportInfoStatus(@Param("pageData") PageData pageData);

    List<LinkedHashMap<String, Object>> selectAllByExtFlagAndIdList(@Param("extFlag") String extFlag,
                                                                    @Param("idCollection") Collection<String> idCollection);

    List<CerSysteminitImportInfo> queryAllData();

    int countInitData(Date time);

    int countInitDataT2(@Param("time") Date time, @Param("cityid") String cityid);

    List<CerSysteminitImportInfo> queryByAll(CerSysteminitImportInfo cerSysteminitImportInfo);

    int deleteByIdIn(@Param("idCollection") Collection<String> idCollection);

    Integer countByInsertDatetimeBetweenEqual(@Param("minInsertDatetime") Date minInsertDatetime,
                                              @Param("maxInsertDatetime") Date maxInsertDatetime);


    List<LinkedHashMap<String, Object>> selectInitForGJMode(@Param("idList") List<String> idList,
                                                            @Param("idsData") Object idsData,
                                                            @Param("pageData") PageData pageData);

}
